Check screen really changed before notifying it and invalidating the context
authorCarlos Garcia Campos <cgarcia@igalia.com>
Fri, 26 Nov 2010 08:01:17 +0000 (09:01 +0100)
committerCarlos Garnacho <carlosg@gnome.org>
Sat, 4 Dec 2010 14:39:49 +0000 (15:39 +0100)
gtk/gtkstylecontext.c

index 2cee5004bc2eb4f3db6f7bdf02bad36f1ac3fa1d..7e1dd2c8b1047e8aea4c1f9ba9a8c3ac88964e57 100644 (file)
@@ -2556,8 +2556,12 @@ gtk_style_context_set_screen (GtkStyleContext *context,
   GtkStyleContextPrivate *priv;
 
   g_return_if_fail (GTK_IS_STYLE_CONTEXT (context));
+  g_return_if_fail (GDK_IS_SCREEN (screen));
 
   priv = context->priv;
+  if (priv->screen == screen)
+    return;
+
   priv->screen = screen;
 
   g_object_notify (G_OBJECT (context), "screen");